/*
 * Copyright (c) 2018-2999 九五云信息科技有限公司 All rights reserved.
 *
 * https://www.gz-yami.com/
 *
 * 未经允许，不可做商业用途！
 *
 * 版权所有，侵权必究！
 */

package com.yami.shop.bean.param;

import com.yami.shop.bean.model.Product;
import com.yami.shop.bean.model.Sku;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Date;
import java.util.List;

/**
 * 商品参数
 * @author LGH
 */
@Data
public class ProductParam {

    /**
     * 产品ID
     */
    private Long prodId;

    /**
     * 店铺id
     */
    private Long shopId;

    /**
     * 状态
     */
    private Integer status;
    /**
     * 预售状态 1：开启 0：未开启
     */
    private Integer preSellStatus;

    /**
     * 预售发货时间
     */
    private Date preSellTime;
    /**
     * 商品名称
     */
    @NotBlank(message = "商品名称不能为空")
    @Size(max = 200, message = "商品名称长度应该小于{max}")
    private String prodName;

    /**
     * 商品卖点
     */
    @Size(max = 500, message = "商品卖点长度应该小于{max}")
    private String brief;

    /**
     * 商品详情
     */
    private String content;

    /**
     * 商品中文名称
     */
    @NotBlank(message = "商品名称不能为空")
    @Size(max = 200, message = "商品名称长度应该小于{max}")
    private String prodNameCn;
    /**
     * 商品英文名称
     */
    @NotBlank(message = "商品名称不能为空")
    @Size(max = 200, message = "商品名称长度应该小于{max}")
    private String prodNameEn;
    /**
     * 简要描述,卖点等
     */
    @Size(max = 500, message = "商品卖点长度应该小于{max}")
    private String briefCn;
    /**
     * 简要描述,卖点等
     */
    @Size(max = 500, message = "商品卖点长度应该小于{max}")
    private String briefEn;

    /**
     * content 商品详情
     */
    private String contentCn;

    /**
     * content 商品详情
     */
    private String contentEn;
    /**
     * 商品类型(0普通商品 1拼团 2秒杀 3积分)
     */
    private Integer prodType;
    /**
     * 商品价格
     */
    @NotNull(message = "请输入商品价格")
    private Double price;

    /**
     * 商品价格
     */
    @NotNull(message = "请输入商品原价")
    private Double oriPrice;

    /**
     * 商品ids
     */
    private List<Long> prodIds;

    /**
     * 库存量
     */
    @NotNull(message = "请输入商品库存")
    private Integer totalStocks;



    @NotBlank(message = "请选择图片上传")
    private String pic;

    /**
     * 商品视频
     */
    private String video;

    /**
     * 商品图片
     */
    @NotBlank(message = "请选择图片上传")
    private String imgs;

    /**
     * 商品分类
     */
    @NotNull(message = "请选择商品分类")
    private Long categoryId;

    /**
     * 商品分类
     */
    @NotNull(message = "请选择本店商品分类")
    private Long shopCategoryId;

    /**
     * 品牌Id
     */
    private Long brandId;

    /**
     * sku列表字符串
     */
    private List<Sku> skuList;

    /**
     *  店铺名称
     */
    private String shopName;

    /**
     *  当前语言
     */
    private Integer lang;

    /**
     * 是否能够用户自提
     */
    private Product.DeliveryModeVO deliveryModeVo;

    /**
     * 运费模板id
     */
    private Long deliveryTemplateId;

    /**
     * 是否筛掉分销商品 1是 0否
     */
    private Integer isDistribution;

    /**
     * 是否为组合商品，0普通商品，1组合商品
     */
    private Integer isCompose;
    /**
     * 积分价格
     */
    private Integer scorePrice;
    /**
     * 排序
     */
    private Integer seq;


}
